var flyoutsAllowed = false;
function enableFlyoutsAfterDelay()
{
    setTimeout("flyoutsAllowed = true;", 25);
}

function overrideMenu_HoverStatic(item) 
{
    if (!flyoutsAllowed)
    {
        setTimeout(delayMenu_HoverStatic(item), 50);
    }
    else
    {
        // this code is the default ASP.NET implementation of Menu_HoverStatic
        var node = Menu_HoverRoot(item);
        var data = Menu_GetData(item);
        if (!data) return;
        __disappearAfter = data.disappearAfter;
        Menu_Expand(node, data.horizontalOffset, data.verticalOffset); 
    }
}

function delayMenu_HoverStatic(item)
{
    return (function()
    {
        overrideMenu_HoverStatic(item);
    });
}